Namespace C4F.DevKit.Bluetooth.ObjectExchange

    ''' <summary>
    ''' Specifies the type of ObjectExchange request.
    ''' </summary>
    Friend Enum ObjectExchangeRequestCode As Byte
        ''' <summary>
        ''' CONNECT request is used to initiate the connection with a remote
        ''' device and setup the basic expectations of each side of the link.
        ''' </summary>
        Connect = 128

        ''' <summary>
        ''' DISCONNECT request signals the end of the Object Exchange session.
        ''' </summary>
        Disconnect = 129

        ''' <summary>
        ''' PUT request, with final bit not set, sends one chunk of an object
        ''' from the user to the Object Exchange Service. The final bit is not
        ''' set to indicate that this is not the last chunk of the object.
        ''' </summary>
        Put = 2

        ''' <summary>
        ''' PUT request, with final bit set, sends one object or the final chunk
        ''' of an object from the user to the Object Exchange Service. The final
        ''' bit set indicates that this is the last chunk of the object.
        ''' </summary>
        PutFinal = 130

        ''' <summary>
        ''' GET request, with final bit not set, requests the Object Exchange 
        ''' Service to return an object to the user. The final bit is not set
        ''' to indicate that this is not the last packet containing headers 
        ''' describing the item being requested.
        ''' </summary>
        GetNoFinal = 3

        ''' <summary>
        ''' GET request, with final bit set, requests the Object Exchange
        ''' Service to return an object to the user. The final bit set 
        ''' indicates that this is the last packet containing headers 
        ''' describing the item being requested and the request phase of 
        ''' the GET is complete.
        ''' </summary>
        GetFinal = 131

        ''' <summary>
        ''' The SETPATH request is used to request the Object Exchange Service
        ''' to set the “current folder” on the remote device in order to enable
        ''' transfers that need additional path information. SETPATH is also 
        ''' used to create the folder structure on the remote device.
        ''' </summary>
        SetPath = 133

        ''' <summary>
        ''' ABORT request is used when the user decides to terminate a multi-
        ''' packet operation (such as PUT) before it would normally end.
        ''' </summary>
        Abort = 255

    End Enum

End Namespace
